package com.flyinbed.coolweather.activity;

import android.support.v7.app.AppCompatActivity;
import android.os.Bundle;

import com.baidu.location.BDLocationListener;
import com.baidu.location.LocationClient;
import com.baidu.location.LocationClientOption;
import com.flyinbed.coolweather.R;
import com.flyinbed.coolweather.bean.MyLocationListener;
import com.flyinbed.coolweather.bean.NewWorkBean;
import com.flyinbed.coolweather.network.HttpUtil;
import com.flyinbed.coolweather.utils.LogUtil;
import com.google.gson.Gson;

import org.greenrobot.eventbus.EventBus;

public class MainActivity extends AppCompatActivity {
    public LocationClient mLocationClient = null;
    public BDLocationListener myListener = new MyLocationListener();

    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_main);
        EventBus.getDefault().register(this);

        mLocationClient = new LocationClient(getApplicationContext());     //声明LocationClient类
        mLocationClient.registerLocationListener(myListener);    //注册监听函数
        initLocationInfo();
        mLocationClient.start();


    }

    private void initHttp(String text,String city,String log,String lat) {
        HttpUtil httpUtil = new HttpUtil();
        Gson gson = new Gson();
        NewWorkBean requestJson = new NewWorkBean();
        requestJson.setId("122121213322333");
        requestJson.setCity(city);
        requestJson.setProvince(city);
        requestJson.setTime(System.currentTimeMillis()+"");
        requestJson.setText(text);
        requestJson.setLocation(log+","+lat);
        requestJson.setSpeed("0");
        requestJson.setBearing("0");
        requestJson.setIsNew(1);
        String json =  gson.toJson(requestJson);
    }


    /**
     * 定位初始化
     */
    private void initLocationInfo(){
        LocationClientOption option = new LocationClientOption();
        option.setLocationMode(LocationClientOption.LocationMode.Hight_Accuracy
        );//可选，默认高精度，设置定位模式，高精度，低功耗，仅设备
      option.setCoorType("bd09ll");//可选，默认gcj02，设置返回的定位结果坐标系
     //   option.setCoorType("gcj02");//可选，默认gcj02，设置返回的定位结果坐标系
//        int span=10;
//        option.setScanSpan(span);//可选，默认0，即仅定位一次，设置发起定位请求的间隔需要大于等于1000ms才是有效的
        option.setIsNeedAddress(true);//可选，设置是否需要地址信息，默认不需要
        option.setOpenGps(true);//可选，默认false,设置是否使用gps
        option.setLocationNotify(true);//可选，默认false，设置是否当GPS有效时按照1S/1次频率输出GPS结果
        option.setIsNeedLocationDescribe(true);//可选，默认false，设置是否需要位置语义化结果，可以在BDLocation.getLocationDescribe里得到，结果类似于“在北京天安门附近”
        option.setIsNeedLocationPoiList(true);//可选，默认false，设置是否需要POI结果，可以在BDLocation.getPoiList里得到
        option.setIgnoreKillProcess(false);//可选，默认true，定位SDK内部是一个SERVICE，并放到了独立进程，设置是否在stop的时候杀死这个进程，默认不杀死
        option.SetIgnoreCacheException(false);//可选，默认false，设置是否收集CRASH信息，默认收集
        option.setEnableSimulateGps(false);//可选，默认false，设置是否需要过滤GPS仿真结果，默认需要
        mLocationClient.setLocOption(option);
    }

    @Override
    protected void onDestroy() {
        super.onDestroy();
        EventBus.getDefault().unregister(this);
    }
}
